home *** CD-ROM | disk | FTP | other *** search
- /*
- File: GXGraphicsPriv.h
-
- Contains: QuickDraw GX to PostScript conversion code.
-
- Version: Technology: Quickdraw GX 1.1.x
-
- Copyright: © 1994-1997 by Apple Computer, Inc., all rights reserved.
- */
-
- #ifndef __GXGRAPHICSPRIV__
- #define __GXGRAPHICSPRIV__
-
- #ifndef __MIXEDMODE__
- #include <MixedMode.h>
- #endif
- #ifndef __TYPES__
- #include <Types.h>
- #endif
- #ifndef __OSUTILS__
- #include <OSUtils.h>
- #endif
- #ifndef __QUICKDRAW__
- #include <Quickdraw.h>
- #endif
- #ifndef __GXMATH__
- #include <GXMath.h>
- #endif
- #ifndef __GXTYPES__
- #include <GXTypes.h>
- #endif
- #ifndef __GXENVIRONMENT__
- #include <GXEnvironment.h>
- #endif
-
-
-
- #if PRAGMA_ONCE
- #pragma once
- #endif
-
- #ifdef __cplusplus
- extern "C" {
- #endif
-
- #if PRAGMA_IMPORT
- #pragma import on
- #endif
-
- #if PRAGMA_STRUCT_ALIGN
- #pragma options align=mac68k
- #elif PRAGMA_STRUCT_PACKPUSH
- #pragma pack(push, 2)
- #elif PRAGMA_STRUCT_PACK
- #pragma pack(2)
- #endif
-
- #if defined(__MWERKS__) && TARGET_CPU_68K
- #pragma push
- #pragma pointers_in_D0
- #endif
-
- #if TARGET_CPU_68K && defined(GXBUILD)
- #undef THREEWORDINLINE
- #define THREEWORDINLINE(w1,w2,w3)
- #endif
-
-
-
- typedef struct graphicsBugParameters graphicsBugParameters;
- //EXTERN_API_C( Boolean )
- GXGetGraphicsBugParametersPointer (graphicsBugParameters ** blockPointer) THREEWORDINLINE(0x303C, 0x01FE, 0xA832);
-
- typedef struct graphicsThreadRecord *gxGraphicsThread;
- /* This tag type is used by printing to convert gx polygons to QD 6 sided polygons */
-
- enum {
- polw = 'polw' //FOUR_CHAR_CODE('polw')
- };
-
- /* This structure gives printing the information needed to do the conversion */
- struct QDPolygonConversion {
- gxPoint penSize;
- Boolean sixSided;
- SInt8 pad; /* pad out structure to even-byte length */
- };
- typedef struct QDPolygonConversion QDPolygonConversion;
-
- typedef QDPolygonConversion * QDPolygonConversionPtr;
- /* This tag type is used by printing to determine that there is a transfer mode */
-
- enum {
- ormd = 'ormd' //FOUR_CHAR_CODE('ormd')
- };
-
- /*
- * The postscript name for the font+textFace in a style, set by the translator.
- * The data is the ascii name, the length of the name is the size of the tag.
- */
-
- enum {
- gxPostscriptFontNameSynonymTag = 'psfn' //FOUR_CHAR_CODE('psfn')
- };
-
- #ifndef GXTOPOSTSCRIPTLIBRARY
- /* printing's call to choose fonts during unflattening */
- typedef CALLBACK_API_C( gxFont , gxUserFindFontsProcPtr )(void *refcon, gxFont fontID, gxFontName name, gxFontPlatform platform, gxFontScript script, gxFontLanguage language, long length, const unsigned char text[]);
- typedef STACK_UPP_TYPE(gxUserFindFontsProcPtr) gxUserFindFontsUPP;
- enum { uppgxUserFindFontsProcInfo = 0x003FFFF1 }; /* 4_bytes Func(4_bytes, 4_bytes, 4_bytes, 4_bytes, 4_bytes, 4_bytes, 4_bytes, 4_bytes) */
- #define NewgxUserFindFontsProc(userRoutine) (gxUserFindFontsUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppgxUserFindFontsProcInfo, GetCurrentArchitecture())
- #define CallgxUserFindFontsProc(userRoutine, refcon, fontID, name, platform, script, language, length, text) CALL_EIGHT_PARAMETER_UPP((userRoutine), uppgxUserFindFontsProcInfo, (refcon), (fontID), (name), (platform), (script), (language), (length), (text))
-
- /* flattens the passed shape and returns the total number of bytes needed at a minimum */
- /* Also places a more desirable number of bytes in preferredSize (if non-nil) */
- EXTERN_API_C( long )
- FlattenShapeWithStatistics (gxShape source,
- long flags,
- gxSpoolBlock * block,
- long * preferredSize) THREEWORDINLINE(0x303C, 0x0264, 0xA832);
-
- EXTERN_API_C( Boolean )
- ShrinkOneGraphicsHeap (gxGraphicsClient client) THREEWORDINLINE(0x303C, 0x022E, 0xA832);
-
- /* grow’s the passed client’s graphics heap to the maximum possible size */
- EXTERN_API_C( Boolean )
- ZoomGraphicsHeap (gxGraphicsClient client) THREEWORDINLINE(0x303C, 0x0263, 0xA832);
-
- /* takes a function pointer to map names to fonts during unflattening */
- EXTERN_API_C( gxShape )
- GXUnflattenShapeWithFindFonts (gxSpoolBlock * block,
- long count,
- const gxViewPort portList[],
- gxUserFindFontsUPP FindFonts,
- void * findFontsRefcon) THREEWORDINLINE(0x303C, 0x0270, 0xA832);
-
- /* this guy calls through the function pointer returned by GXGetConvertQDFont */
- EXTERN_API_C( long )
- GXConvertQDFontWithPatches (gxStyle theStyle,
- long txFont,
- long txFace) THREEWORDINLINE(0x303C, 0x0272, 0xA832);
-
- EXTERN_API_C( gxGraphicsThread )
- GXNewGraphicsThread (long threadID) THREEWORDINLINE(0x303C, 0x022F, 0xA832);
-
- EXTERN_API_C( void )
- GXDisposeGraphicsThread (gxGraphicsThread thread) THREEWORDINLINE(0x303C, 0x0230, 0xA832);
-
- EXTERN_API_C( gxGraphicsThread )
- GXGetGraphicsThread (void) THREEWORDINLINE(0x303C, 0x0231, 0xA832);
-
- EXTERN_API_C( void )
- GXSetGraphicsThread (gxGraphicsThread thread) THREEWORDINLINE(0x303C, 0x0232, 0xA832);
-
- /* For gathering timing and polling statics for a job */
- EXTERN_API_C( void )
- GXSetPrintingDocument (char * jobName,
- long isPrinting) THREEWORDINLINE(0x303C, 0x0233, 0xA832);
-
- #endif
-
- /* For PostScript Imaging Engine to generate underline shapes */
- EXTERN_API_C( gxShape )
- GXGetGlyphUnderlines (gxShape source) THREEWORDINLINE(0x303C, 0x0234, 0xA832);
-
- EXTERN_API_C( void )
- GXEasterEgg (long flags) THREEWORDINLINE(0x303C, 0x0235, 0xA832);
-
- /* PostScript imaging system utility calls */
- EXTERN_API_C( gxShapeType )
- GetTransformClipType (gxTransform source) THREEWORDINLINE(0x303C, 0x0267, 0xA832);
-
- EXTERN_API_C( Boolean )
- DoesStyleHavePattern (gxStyle source) THREEWORDINLINE(0x303C, 0x0268, 0xA832);
-
- EXTERN_API_C( Boolean )
- DoesStyleHaveDash (gxStyle source) THREEWORDINLINE(0x303C, 0x0269, 0xA832);
-
- /* we no longer document and export this call, since we don’t tell people what a gxHeap is */
- EXTERN_API_C( void *)
- GXGetGraphicsClientHeap (gxGraphicsClient client) THREEWORDINLINE(0x303C, 0x005D, 0xA832);
-
- /* this function is used by Spooling in printing to avoid having to use a shared client for printing */
- EXTERN_API_C( gxGraphicsClient )
- NewLargestGraphicsClient (void) THREEWORDINLINE(0x303C, 0x026A, 0xA832);
-
- /* this function is used by Print Viewer API in Printing to avoid having to make an extra copy of the page shape */
- EXTERN_API_C( void )
- ExchangeShapeMasterPointers (gxShape one,
- gxShape two) THREEWORDINLINE(0x303C, 0x0271, 0xA832);
-
- /* This function and the typedef are used by printing to get at the Translator ProcSet and to activate it */
- #define gxUseTranslatorProcSet 0x8000
- #define gxIgnorePrintActionHook 0x4000
- EXTERN_API_C( long )
- GXGetTranslatorProcSet (char * mysteryParameter) THREEWORDINLINE(0x303C, 0x026B, 0xA832);
-
- /* This is to pass the QD face information to the PS imaging engine. */
-
- enum {
- textFaceTagType = FOUR_CHAR_CODE('tfac')
- };
-
- /* The type of the data for first textFaceTagType is Style as found in <Quickdraw.h> */
- /* The type of the data for the second textFaceTagType is Fixed, with the point size of the text. */
- /* This tag defines the target of a given item (for example, text face), contains
- one of: gxRasterTargetTranslation,
- gxPostScriptTargetTranslation,
- gxVectorTargetTranslation,
- gxPDDTargetTranslation */
-
- enum {
- targetTagType = FOUR_CHAR_CODE('targ')
- };
-
- /*
- * This guy returns a 1-point bounding box for the font, that encloses all of the glyphs.
- * Unless the bounds are set to 0, in which case the font didn't know its bounds.
- */
- EXTERN_API_C( gxRectangle *)
- GXPrivateGetFontBounds (gxFont fontID,
- long count,
- const gxFontVariation variation[],
- gxRectangle * bounds) THREEWORDINLINE(0x303C, 0x0275, 0xA832);
-
- EXTERN_API_C( Boolean )
- GXisScalerStreamingReentrant (gxFontFormatTag format) THREEWORDINLINE(0x303C, 0x0278, 0xA832);
-
- /* really a QuickDraw style byte */
- typedef long longCommonFace;
- EXTERN_API_C( void )
- TRSetStyleCommonFace (gxStyle source,
- longCommonFace face,
- Fixed textSize,
- Fixed hScale,
- long postScriptTargetBoolean,
- gxLayerFlag flags) THREEWORDINLINE(0x303C, 0x0281, 0xA832);
-
- #ifndef GXTOPOSTSCRIPTLIBRARY
- /* messages passed to GXUpdateGrafPort */
-
- enum {
- updateMessage = 0,
- closeMessage = 1
- };
-
- EXTERN_API_C( void )
- GXUpdateGrafPort (long message,
- GrafPtr qdPortPtr) THREEWORDINLINE(0x303C, 0x0284, 0xA832);
-
- /* MorphPositionTextGX is called by ScriptLayout */
- EXTERN_API_C( gxShape )
- MorphPositionTextGX (gxShape layout) THREEWORDINLINE(0x303C, 0x0285, 0xA832);
-
- typedef CALLBACK_API_C( Boolean , gxUserDebugFunction )(const char *str, long message, long reference);
- EXTERN_API_C( gxUserDebugFunction )
- GXGetUserGraphicsDebug (long * reference) THREEWORDINLINE(0x303C, 0x01FF, 0xA832);
-
- EXTERN_API_C( void )
- GXSetUserGraphicsDebug (gxUserDebugFunction userFunction,
- long reference) THREEWORDINLINE(0x303C, 0x0200, 0xA832);
-
- /******************* Taken from 'translator types.h' originally ************************/
- /* defined in QDTypes.h */
- typedef struct CommonObject CommonObject;
- typedef CALLBACK_API( void , CommonTypeProcPtr )(void *something, CommonObject *theObject);
- typedef CALLBACK_API( void , TextTypeProcPtr )(void *something, short byteCount, Ptr textBuf, Point numer, Point denom);
- typedef CALLBACK_API( void , LineTypeProcPtr )(void *something, Point newPt);
- typedef CALLBACK_API( void , RectTypeProcPtr )(void *something, GrafVerb verb, const Rect *r);
- typedef CALLBACK_API( void , RRectTypeProcPtr )(void *something, GrafVerb verb, const Rect *r, short ovalWidth, short ovalHeight);
- typedef CALLBACK_API( void , OvalTypeProcPtr )(void *something, GrafVerb verb, const Rect *r);
- typedef CALLBACK_API( void , ArcTypeProcPtr )(void *something, GrafVerb verb, const Rect *r, short startAngle, short arcAngle);
- typedef CALLBACK_API( void , PolyTypeProcPtr )(void *something, GrafVerb verb, PolyHandle poly);
- typedef CALLBACK_API( void , RgnTypeProcPtr )(void *something, GrafVerb verb, RgnHandle rgn);
- typedef CALLBACK_API( void , BitsTypeProcPtr )(void *something, const BitMap *srcBits, const Rect *srcRect, const Rect *dstRect, short mode, RgnHandle maskRgn);
- typedef CALLBACK_API( void , CommentTypeProcPtr )(void *something, short kind, short dataSize, Handle dataHandle);
- typedef CALLBACK_API( void , PixTypeProcPtr )(void *something, PixMapPtr src, const Rect *srcRect, Ptr matrix, short mode, RgnHandle mask, PixMapPtr matte, const Rect *matteRect, short flags);
- typedef CALLBACK_API( short , TxMeasTypeProcPtr )(short byteCount, Ptr textAddr, Point *numer, Point *denom, FontInfo *info);
- typedef CALLBACK_API( void , GetPicTypeProcPtr )(Ptr dataPtr, short byteCount);
- typedef CALLBACK_API( void , PutPicTypeProcPtr )(Ptr dataPtr, short byteCount);
- typedef CALLBACK_API( void , DrawPictureTypeProcPtr )(PicHandle thePicture, const Rect *dstRect);
- typedef STACK_UPP_TYPE(CommonTypeProcPtr) CommonTypeUPP;
- typedef STACK_UPP_TYPE(TextTypeProcPtr) TextTypeUPP;
- typedef STACK_UPP_TYPE(LineTypeProcPtr) LineTypeUPP;
- typedef STACK_UPP_TYPE(RectTypeProcPtr) RectTypeUPP;
- typedef STACK_UPP_TYPE(RRectTypeProcPtr) RRectTypeUPP;
- typedef STACK_UPP_TYPE(OvalTypeProcPtr) OvalTypeUPP;
- typedef STACK_UPP_TYPE(ArcTypeProcPtr) ArcTypeUPP;
- typedef STACK_UPP_TYPE(PolyTypeProcPtr) PolyTypeUPP;
- typedef STACK_UPP_TYPE(RgnTypeProcPtr) RgnTypeUPP;
- typedef STACK_UPP_TYPE(BitsTypeProcPtr) BitsTypeUPP;
- typedef STACK_UPP_TYPE(CommentTypeProcPtr) CommentTypeUPP;
- typedef STACK_UPP_TYPE(PixTypeProcPtr) PixTypeUPP;
- typedef STACK_UPP_TYPE(TxMeasTypeProcPtr) TxMeasTypeUPP;
- typedef STACK_UPP_TYPE(GetPicTypeProcPtr) GetPicTypeUPP;
- typedef STACK_UPP_TYPE(PutPicTypeProcPtr) PutPicTypeUPP;
- typedef STACK_UPP_TYPE(DrawPictureTypeProcPtr) DrawPictureTypeUPP;
- enum { uppCommonTypeProcInfo = 0x000003C0 }; /* pascal no_return_value Func(4_bytes, 4_bytes) */
- enum { uppTextTypeProcInfo = 0x0000FEC0 }; /* pascal no_return_value Func(4_bytes, 2_bytes, 4_bytes, 4_bytes, 4_bytes) */
- enum { uppLineTypeProcInfo = 0x000003C0 }; /* pascal no_return_value Func(4_bytes, 4_bytes) */
- enum { uppRectTypeProcInfo = 0x00000DC0 }; /* pascal no_return_value Func(4_bytes, 1_byte, 4_bytes) */
- enum { uppRRectTypeProcInfo = 0x0000ADC0 }; /* pascal no_return_value Func(4_bytes, 1_byte, 4_bytes, 2_bytes, 2_bytes) */
- enum { uppOvalTypeProcInfo = 0x00000DC0 }; /* pascal no_return_value Func(4_bytes, 1_byte, 4_bytes) */
- enum { uppArcTypeProcInfo = 0x0000ADC0 }; /* pascal no_return_value Func(4_bytes, 1_byte, 4_bytes, 2_bytes, 2_bytes) */
- enum { uppPolyTypeProcInfo = 0x00000DC0 }; /* pascal no_return_value Func(4_bytes, 1_byte, 4_bytes) */
- enum { uppRgnTypeProcInfo = 0x00000DC0 }; /* pascal no_return_value Func(4_bytes, 1_byte, 4_bytes) */
- enum { uppBitsTypeProcInfo = 0x0003BFC0 }; /* pascal no_return_value Func(4_bytes, 4_bytes, 4_bytes, 4_bytes, 2_bytes, 4_bytes) */
- enum { uppCommentTypeProcInfo = 0x00003AC0 }; /* pascal no_return_value Func(4_bytes, 2_bytes, 2_bytes, 4_bytes) */
- enum { uppPixTypeProcInfo = 0x00BFBFC0 }; /* pascal no_return_value Func(4_bytes, 4_bytes, 4_bytes, 4_bytes, 2_bytes, 4_bytes, 4_bytes, 4_bytes, 2_bytes) */
- enum { uppTxMeasTypeProcInfo = 0x0000FFA0 }; /* pascal 2_bytes Func(2_bytes, 4_bytes, 4_bytes, 4_bytes, 4_bytes) */
- enum { uppGetPicTypeProcInfo = 0x000002C0 }; /* pascal no_return_value Func(4_bytes, 2_bytes) */
- enum { uppPutPicTypeProcInfo = 0x000002C0 }; /* pascal no_return_value Func(4_bytes, 2_bytes) */
- enum { uppDrawPictureTypeProcInfo = 0x000003C0 }; /* pascal no_return_value Func(4_bytes, 4_bytes) */
- #define NewCommonTypeProc(userRoutine) (CommonTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppCommonTypeProcInfo, GetCurrentArchitecture())
- #define NewTextTypeProc(userRoutine) (TextTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppTextTypeProcInfo, GetCurrentArchitecture())
- #define NewLineTypeProc(userRoutine) (LineTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppLineTypeProcInfo, GetCurrentArchitecture())
- #define NewRectTypeProc(userRoutine) (RectTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppRectTypeProcInfo, GetCurrentArchitecture())
- #define NewRRectTypeProc(userRoutine) (RRectTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppRRectTypeProcInfo, GetCurrentArchitecture())
- #define NewOvalTypeProc(userRoutine) (OvalTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppOvalTypeProcInfo, GetCurrentArchitecture())
- #define NewArcTypeProc(userRoutine) (ArcTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppArcTypeProcInfo, GetCurrentArchitecture())
- #define NewPolyTypeProc(userRoutine) (PolyTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPolyTypeProcInfo, GetCurrentArchitecture())
- #define NewRgnTypeProc(userRoutine) (RgnTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppRgnTypeProcInfo, GetCurrentArchitecture())
- #define NewBitsTypeProc(userRoutine) (BitsTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppBitsTypeProcInfo, GetCurrentArchitecture())
- #define NewCommentTypeProc(userRoutine) (CommentTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppCommentTypeProcInfo, GetCurrentArchitecture())
- #define NewPixTypeProc(userRoutine) (PixTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPixTypeProcInfo, GetCurrentArchitecture())
- #define NewTxMeasTypeProc(userRoutine) (TxMeasTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppTxMeasTypeProcInfo, GetCurrentArchitecture())
- #define NewGetPicTypeProc(userRoutine) (GetPicTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppGetPicTypeProcInfo, GetCurrentArchitecture())
- #define NewPutPicTypeProc(userRoutine) (PutPicTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPutPicTypeProcInfo, GetCurrentArchitecture())
- #define NewDrawPictureTypeProc(userRoutine) (DrawPictureTypeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDrawPictureTypeProcInfo, GetCurrentArchitecture())
- #define CallCommonTypeProc(userRoutine, something, theObject) CALL_TWO_PARAMETER_UPP((userRoutine), uppCommonTypeProcInfo, (something), (theObject))
- #define CallTextTypeProc(userRoutine, something, byteCount, textBuf, numer, denom) CALL_FIVE_PARAMETER_UPP((userRoutine), uppTextTypeProcInfo, (something), (byteCount), (textBuf), (numer), (denom))
- #define CallLineTypeProc(userRoutine, something, newPt) CALL_TWO_PARAMETER_UPP((userRoutine), uppLineTypeProcInfo, (something), (newPt))
- #define CallRectTypeProc(userRoutine, something, verb, r) CALL_THREE_PARAMETER_UPP((userRoutine), uppRectTypeProcInfo, (something), (verb), (r))
- #define CallRRectTypeProc(userRoutine, something, verb, r, ovalWidth, ovalHeight) CALL_FIVE_PARAMETER_UPP((userRoutine), uppRRectTypeProcInfo, (something), (verb), (r), (ovalWidth), (ovalHeight))
- #define CallOvalTypeProc(userRoutine, something, verb, r) CALL_THREE_PARAMETER_UPP((userRoutine), uppOvalTypeProcInfo, (something), (verb), (r))
- #define CallArcTypeProc(userRoutine, something, verb, r, startAngle, arcAngle) CALL_FIVE_PARAMETER_UPP((userRoutine), uppArcTypeProcInfo, (something), (verb), (r), (startAngle), (arcAngle))
- #define CallPolyTypeProc(userRoutine, something, verb, poly) CALL_THREE_PARAMETER_UPP((userRoutine), uppPolyTypeProcInfo, (something), (verb), (poly))
- #define CallRgnTypeProc(userRoutine, something, verb, rgn) CALL_THREE_PARAMETER_UPP((userRoutine), uppRgnTypeProcInfo, (something), (verb), (rgn))
- #define CallBitsTypeProc(userRoutine, something, srcBits, srcRect, dstRect, mode, maskRgn) CALL_SIX_PARAMETER_UPP((userRoutine), uppBitsTypeProcInfo, (something), (srcBits), (srcRect), (dstRect), (mode), (maskRgn))
- #define CallCommentTypeProc(userRoutine, something, kind, dataSize, dataHandle) CALL_FOUR_PARAMETER_UPP((userRoutine), uppCommentTypeProcInfo, (something), (kind), (dataSize), (dataHandle))
- #define CallPixTypeProc(userRoutine, something, src, srcRect, matrix, mode, mask, matte, matteRect, flags) CALL_NINE_PARAMETER_UPP((userRoutine), uppPixTypeProcInfo, (something), (src), (srcRect), (matrix), (mode), (mask), (matte), (matteRect), (flags))
- #define CallTxMeasTypeProc(userRoutine, byteCount, textAddr, numer, denom, info) CALL_FIVE_PARAMETER_UPP((userRoutine), uppTxMeasTypeProcInfo, (byteCount), (textAddr), (numer), (denom), (info))
- #define CallGetPicTypeProc(userRoutine, dataPtr, byteCount) CALL_TWO_PARAMETER_UPP((userRoutine), uppGetPicTypeProcInfo, (dataPtr), (byteCount))
- #define CallPutPicTypeProc(userRoutine, dataPtr, byteCount) CALL_TWO_PARAMETER_UPP((userRoutine), uppPutPicTypeProcInfo, (dataPtr), (byteCount))
- #define CallDrawPictureTypeProc(userRoutine, thePicture, dstRect) CALL_TWO_PARAMETER_UPP((userRoutine), uppDrawPictureTypeProcInfo, (thePicture), (dstRect))
-
- #endif
-
-
- #if TARGET_CPU_68K && defined(GXBUILD)
- #if TARGET_OS_MAC && !TARGET_RT_MAC_CFM
- #undef THREEWORDINLINE
- #define THREEWORDINLINE(w1,w2,w3) = {w1,w2,w3}
- #endif
- #endif
-
- #if defined(__MWERKS__) && TARGET_CPU_68K
- #pragma pop
- #endif
-
-
-
- #if PRAGMA_STRUCT_ALIGN
- #pragma options align=reset
- #elif PRAGMA_STRUCT_PACKPUSH
- #pragma pack(pop)
- #elif PRAGMA_STRUCT_PACK
- #pragma pack()
- #endif
-
- #ifdef PRAGMA_IMPORT_OFF
- #pragma import off
- #elif PRAGMA_IMPORT
- #pragma import reset
- #endif
-
- #ifdef __cplusplus
- }
- #endif
-
- #endif /* __GXGRAPHICSPRIV__ */
-
-